﻿using System.Collections.Generic;
using System.ComponentModel.Composition;
using DyUi.Base.Interfaces.Services;

namespace DyUi.Base.Interfaces.SubSystems
{
    public interface IExecutionSubSystem : IDyUiControllerSubSystem
    {
        IEnumerable<ExportFactory<IExecutionService, IScriptHostMetaData>> CodeExecutionHosts { get; set; }
        Dictionary<string, ExportFactory<IExecutionService, IScriptHostMetaData>> CodeExecutionHostsMap { get; set; }
        IExecutionService ResolveExecutionHost(IDyUiComponent component);
    }
}